﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Telerik.WinControls;

namespace Sistema_de_Patrimonio.SDP_UI.Articulos
{
    public partial class Articulos_Alta : Telerik.WinControls.UI.RadForm
    {
        public Articulos_Alta()
        {
            InitializeComponent();
        }

        private void radButton2_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void BtnAltaAceptar_Click(object sender, EventArgs e)
        {
                        if (TxtAltaDependencia.Text.Length == 0)
             {
                 MessageBox.Show("Falta ingresar la Dependencia", "Error...", MessageBoxButtons.OK, MessageBoxIcon.Information);
                 TxtAltaDependencia.Focus();
             }

           else if (TxtAltaDescripcion.Text.Length == 0)
            {
                MessageBox.Show("Falta ingresar una Descripción", "Error...", MessageBoxButtons.OK, MessageBoxIcon.Information);
                TxtAltaDescripcion.Focus();
            }
            else if (TxtAltaCuenta.Text.Length == 0)
            {
                MessageBox.Show("Falta ingresar una Cuenta", "Error...", MessageBoxButtons.OK, MessageBoxIcon.Information);
                TxtAltaCuenta.Focus();
            }

                        else if (TxtAltaInventario.TextLength == 0)
                        {
                            MessageBox.Show("Falta ingresar el N° de Inventario", "Error...", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            TxtAltaInventario.Focus();
                        }
                        else
                        {
                            Common_Files.Definitions.Articulo Articulo = new Common_Files.Definitions.Articulo();
                            Articulo.Articulo_Inventario = Convert.ToUInt32(TxtAltaInventario.Text);
                            Articulo.Articulo_Cuenta = Convert.ToUInt32(TxtAltaCuenta.Text);
                            if (TxtAltaConcepto.Text.Length == 0) TxtAltaConcepto.Text = "0";
                            Articulo.Articulo_Concepto = Convert.ToUInt32(TxtAltaConcepto.Text);
                            Articulo.Dependencia_ID = Convert.ToUInt32(TxtAltaDependencia.Text);
                            Articulo.Articulo_Descripcion = TxtAltaDescripcion.Text;
                            if (TxtAltaPrecio.Text.Length == 0) TxtAltaPrecio.Text = "0";
                            Articulo.Articulo_Precio = Convert.ToDecimal(TxtAltaPrecio.Text);
                            Articulo.Articulo_FechaAdquirido = Convert.ToDateTime(TxtAltaFechaAdquisicion.Value);
                            if (TxtAltaTipoDocumento.Text.Length == 0) Articulo.Articulo_TipoDocumento = 1;
                            else
                                Articulo.Articulo_TipoDocumento = Convert.ToUInt32(TxtAltaTipoDocumento.SelectedItem.Tag);
                            if (TxtAltaNumeroDocumento.Text.Length == 0) TxtAltaNumeroDocumento.Text = "0";
                            Articulo.Articulo_NumeroDoc = Convert.ToUInt32(TxtAltaNumeroDocumento.Text);
                            if (TxtAltaPorcentaje.Text.Length == 0) TxtAltaPorcentaje.Text = "0";
                            if (txtAltaValorResidual.Text.Length == 0) txtAltaValorResidual.Text = "0";
                            else Articulo.Articulo_Residual = Convert.ToDecimal(txtAltaValorResidual.Text);
                            Articulo.Articulo_Porcentaje = Convert.ToDecimal(TxtAltaPorcentaje.Text);
                            Articulo.Articulo_FechaInforme = Convert.ToDateTime(TxtAltaFechaInforme.Value);
                            Articulo.Articulo_ResolucionBaja = "0";
                            Articulo.Articulo_CargadoPor = SDP_UI.Usuarios.Usuarios_Login.Usuario_Nombre;

                            SDP_DAL.Articulo_DAL Insert = new SDP_DAL.Articulo_DAL();
                            Insert.ArticuloInsert(Articulo);
                            MessageBox.Show("Se dio de Alta el Artículo Exitosamente", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            this.Close();
                            //LimpiarForm();
                        }

        }

        private void Articulos_Alta_Load(object sender, EventArgs e)
        {
            TxtAltaFechaAdquisicion.Value = DateTime.Today.Date;
            TxtAltaFechaInforme.Value = DateTime.Today.Date;
        }

        private void txtEnter_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar == (char)(Keys.Enter))
            {
                e.Handled = true; SendKeys.Send("{TAB}");
            }
            base.OnKeyPress(e);
        }

        private void txtDigitos_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar))
            {
                e.Handled = true;
            }

            if (e.KeyChar == (char)(Keys.Enter))
            {
                e.Handled = true; SendKeys.Send("{TAB}");
            }
            base.OnKeyPress(e);
        }

        private void txtDecimals_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (char.IsLetter(e.KeyChar))
            {
                e.Handled = true;
            }

            if (e.KeyChar == ',')
            {
                e.Handled = true; SendKeys.Send(".");
            }
            base.OnKeyPress(e);

            if (e.KeyChar == (char)(Keys.Enter))
            {
                e.Handled = true; SendKeys.Send("{TAB}");
            }
            base.OnKeyPress(e);
        }


        private void LimpiarForm()
        { 
            
        }

        private void TxtAltaDependencia_Validated(object sender, EventArgs e)
        {
            String Aux = "";
            if (TxtAltaDependencia.Text.Length > 0)
            {
                SDP_DAL.Dependencia_DAL Dependencia = new SDP_DAL.Dependencia_DAL();
                Aux = Dependencia.NombreDependencia(Convert.ToInt16(TxtAltaDependencia.Text));
                if (Aux == "") MessageBox.Show("No Existe la Dependencia Introducida", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Information);
                LblDependencia.Text = Aux;
                LblDependencia.Visible = true;
            }
        }

        private void TxtAltaInventario_Validated(object sender, EventArgs e)
        {
            SDP_DAL.Articulo_DAL Articulo = new SDP_DAL.Articulo_DAL();
            if (TxtAltaInventario.Text.Length > 0 && TxtAltaCuenta.Text.Length > 0)
            {
                if (Articulo.ExisteArticulo(Convert.ToUInt32(TxtAltaInventario.Text.ToString().Trim()), TxtAltaCuenta.Text.ToString().Trim()))
                {
                    BtnAltaAceptar.Enabled = false;
                    MessageBox.Show("El Inventario Introducido ya Existe", "Advertencia", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    TxtAltaInventario.Focus();
                    InventarioCorrecto.Visible = false;
                    InventarioErroneo.Visible = true;
                }
                else
                {
                    BtnAltaAceptar.Enabled = true;
                    InventarioCorrecto.Visible = true;
                    InventarioErroneo.Visible = false;
                }
            }
            else
            {
                InventarioCorrecto.Visible = false;
                InventarioErroneo.Visible = true;
                BtnAltaAceptar.Enabled = false;            
            }
        }
     }
}
